At present, medical imaging often includes creating images of regions of the human body for clinical purposes, such as examination, diagnosis and/or treatment for a patient. The images of a patient study may be accessed and viewed via a dedicated medical image viewer (e.g., a mobile medical image viewer). A medical image viewer may function in conditions characterized by fluctuating network performance and limited hardware performance. These aspects may combine to prevent the medical image viewer from rendering medical images at optimal quality at all times, while maintaining the desired responsiveness to user input.
As an example, in an instance in which a medical image viewer may stream images from a server and display them in quick succession (e.g., scrolling through a set of images), the performance of the medical image viewer may be affected by a number of (compounding) factors.
For instance, the time it takes to transfer the image(s) over the wireless network may affect the performance of the medical image viewer. Additionally, one or more variations in the characteristics of the wireless network of the server, caused by either a poor or inconsistent connection as well as reception network technology such as, for example, utilizing wireless a 3rd generation mobile telecommunications (3G) network as opposed to wireless fidelity (Wi-Fi) may affect the performance of the medical image viewer. Also, the time it takes the medical image viewer to decompress, process and display one or more images may affect the medical image viewer.
As such, one or more of the factors above, may cause a medical image viewer to compromise its rendering quality for a part or an entire duration of an interactive operation such as, for example, a user scrolling through a set of medical images, in order to maintain application responsiveness. In this regard, a medical image viewer may need to degrade its rendering quality in order to enable better performance of the medical image viewer. For instance, a medical image viewer may need to deteriorate (e.g., lower) the quality of (e.g., compress) the medical images being rendered so that the medical image viewer is better able to perform the rendering of the corresponding images. In this regard, for example the medical images may be rendered faster.
At present, mechanisms may exist to address a need for degrading rendering quality, but these existing mechanisms may typically exhibit one or more drawbacks. For instance, these mechanisms may be closely tied to input of a user. In this regard, a degradation technique typically may be applied when a user interacts with a corresponding application (e.g., medical viewer application). For example, degradation algorithm(s) may be applied while the user is dragging a mouse. However, the degradation algorithm(s) may cease being applied when the drag operation ends (e.g., as the user releases the mouse button).
Additionally, current degradation mechanisms may be based on effectively rendering frame rate. In this regard, typically a corresponding algorithm being employed may make decisions regarding whether to apply the degradation and the method of degradation based on the ability of the algorithm to render the desired output with a certain frequency (e.g., frame rate). For example, degradation algorithms may be executed in an instance in which a measured frame rate drops under a minimum acceptable predefined value (e.g., 20 frames per second). However, degrading rendering quality based on a frame rate may be sub-optimal in scenarios where the frequency of states of an application changes significantly over time.
In addition, some existing degradation mechanisms may typically achieve performance improvements by utilizing alternate rendering algorithms. However, utilizing alternative rendering algorithms may require an increased complexity in developing and maintaining such approaches as they may require multiple sets of algorithms to be developed, tested and maintained. Additionally, some existing degradation mechanisms may utilize lower quality source images such as, for example, highly compressed images, with dimensions equal to the dimensions of one or more reference source images. However, a drawback of this approach is that it typically constrains memory bandwidth resources since the highly compressed images are of the same dimensions (e.g., equal size) as the source images. Additionally, such approaches typically exhibit visual compression artifacts.
In view of the foregoing drawbacks, it may be beneficial to provide an efficient and reliable alternative mechanism of applying degradation rendering in order to achieve better performance in rendering one or more images via a display in a computationally efficient and timely manner.